{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Copyright 2022 Google LLC.\n",
    "\n",
    "Licensed under the Apache License, Version 2.0 (the \"License\");"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Licensed under the Apache License, Version 2.0 (the \"License\");\n",
    "# you may not use this file except in compliance with the License.\n",
    "# You may obtain a copy of the License at\n",
    "#\n",
    "# https://www.apache.org/licenses/LICENSE-2.0\n",
    "#\n",
    "# Unless required by applicable law or agreed to in writing, software\n",
    "# distributed under the License is distributed on an \"AS IS\" BASIS,\n",
    "# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n",
    "# See the License for the specific language governing permissions and\n",
    "# limitations under the License."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "FP-G8kbSskqk"
   },
   "source": [
    "### Learning with little mixing\n",
    "\n",
    "This colab notebook accompanies the following paper:\n",
    "\n",
    "    Learning with little mixing.\n",
    "    Ingvar Ziemann and Stephen Tu.\n",
    "    NeurIPS 2022.\n",
    "    https://arxiv.org/abs/2206.08269\n",
    "\n",
    "\n",
    "This notebook reproduces the experiments described in the \"Numerical experiments\" section. Specifically, we look at the $L^2$ excess risk of learning\n",
    "from the following generalized linear model (GLM) trajectory process:\n",
    "$$\n",
    "  X_{t+1} = \\sigma(A^\\star X_t) + W_t.\n",
    "$$\n",
    "We choose $A^\\star$ to have operator (spectral) norm strictly less than one so \n",
    "that the covariate process $\\{X_t\\}$ is ergodic. The labels $Y_t$ are given by\n",
    "$Y_{t} = X_{t-1}$, which indicates we are performing system identification\n",
    "to recover the unknown dynamics matrix $A^\\star$.\n",
    "The link function $\\sigma(\\cdot)$ is the LeakyReLU, and is applied elementwise.\n",
    "\n",
    "Given the covariates/labels $\\{(X_t, Y_t)\\}_{t=1}^{T}$, we consider the\n",
    "empirical risk minimizer:\n",
    "$$\n",
    "  \\hat{A} \\in \\operatorname{argmin}_{A}\\left\\{ \\frac{1}{T}\\sum_{t=1}^{T} \\| \\sigma(A X_t) - Y_t \\|^2 \\right\\}. \n",
    "$$\n",
    "The $L^2$ excess risk of an estimate $A$ is:\n",
    "$$\n",
    "  L(A) = \\frac{1}{T}\\mathbb{E}\\sum_{t=1}^{T} \\| \\sigma(A X_t) - \\sigma(A^\\star X_t) \\|^2,\n",
    "$$\n",
    "We will compare the ERM's excess risk with the ERM on an \n",
    "**independent baseline** dataset $\\{(\\bar{X}_t, \\bar{Y}_t)\\}_{t=1}^{T}$, where each $\\bar{X}_t$ has\n",
    "the same distribution as the original $X_t$, but $\\bar{X}_t$ is independent\n",
    "from $\\bar{X}_{t'}$ for $t \\neq t'$. A descriptive generative model for this\n",
    "baseline is to sample $T$ independent copies of the process $\\{X_t^{(i)}\\}_{t=1}^{T}$ for $i \\in [T]$,\n",
    "and set $\\bar{X}_t = X_t^{(t)}$. The conditional distribution $\\bar{Y}_t \\mid \\bar{X}_t$ remains the same.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "0y-dkJqismdr"
   },
   "outputs": [],
   "source": [
    "from typing import Any, Callable, Sequence, Tuple\n",
    "\n",
    "import enum\n",
    "import dataclasses\n",
    "import functools\n",
    "\n",
    "import numpy as np\n",
    "import scipy as sp\n",
    "import jax.numpy as jnp\n",
    "import jax.scipy as jsp\n",
    "import jax\n",
    "\n",
    "import haiku as hk\n",
    "\n",
    "import itertools as it\n",
    "import time\n",
    "\n",
    "import matplotlib.pylab as plt\n",
    "import seaborn as sns\n",
    "\n",
    "from jax import config as jax_config\n",
    "jax_config.update('jax_enable_x64', True)\n",
    "\n",
    "from tqdm import tqdm"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "0Vq4IHpZZsZ9"
   },
   "outputs": [],
   "source": [
    "PyTree = Any\n",
    "# x_{t+1} = f(x_t)\n",
    "DynamicsFunction = Callable[[jnp.ndarray], jnp.ndarray]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "chnzx1dyaUgx"
   },
   "outputs": [],
   "source": [
    "def rollout(dynamics: DynamicsFunction,\n",
    "            x0: jnp.ndarray,\n",
    "            noises: jnp.ndarray) -> jnp.ndarray:\n",
    "  def scan_fn(x, w):\n",
    "    next_x = dynamics(x) + w\n",
    "    return next_x, next_x\n",
    "  _, xs = jax.lax.scan(scan_fn, x0, noises)\n",
    "  return xs\n",
    "\n",
    "\n",
    "@functools.partial(jax.jit, static_argnums=(0, 2, 5))\n",
    "def random_rollout(dynamics: DynamicsFunction,\n",
    "                   key: jnp.ndarray,\n",
    "                   dim: int,\n",
    "                   init_scale: float,\n",
    "                   noise_scale: float,\n",
    "                   horizon: int) -> jnp.ndarray:\n",
    "  sk1, sk2 = jax.random.split(key)\n",
    "  x0 = init_scale * jax.random.normal(sk1, shape=(dim,))\n",
    "  noises = noise_scale * jax.random.normal(sk2, shape=(horizon, dim))\n",
    "  return rollout(dynamics, x0, noises)\n",
    "\n",
    "\n",
    "@functools.partial(jax.jit, static_argnums=(0, 2, 5))\n",
    "def random_coupled_dataset(dynamics: DynamicsFunction,\n",
    "                           key: jnp.ndarray,\n",
    "                           dim: int,\n",
    "                           init_scale: float,\n",
    "                           noise_scale: float,\n",
    "                           horizon: int) -> Tuple[jnp.ndarray, jnp.ndarray]:\n",
    "  traj = random_rollout(\n",
    "      dynamics, key, dim, init_scale, noise_scale, horizon + 1)\n",
    "  return traj[:-1], traj[1:]\n",
    "\n",
    "\n",
    "@functools.partial(jax.jit, static_argnums=(0, 2, 5))\n",
    "def random_decoupled_dataset(dynamics: DynamicsFunction,\n",
    "                             key: jnp.ndarray,\n",
    "                             dim: int,\n",
    "                             init_scale: float,\n",
    "                             noise_scale: float,\n",
    "                             horizon: int) -> Tuple[jnp.ndarray, jnp.ndarray]:\n",
    "  sks = jax.random.split(key, num=horizon + 1)\n",
    "  all_trajs = jax.vmap(random_rollout, \n",
    "                       in_axes=(None, 0, None, None, None, None))(\n",
    "      dynamics, sks, dim, init_scale, noise_scale, horizon + 1)\n",
    "  xs = all_trajs[jnp.arange(horizon), jnp.arange(horizon)]\n",
    "  ys = all_trajs[jnp.arange(horizon), 1 + jnp.arange(horizon)]\n",
    "  assert xs.shape == ys.shape\n",
    "  return xs, ys\n",
    "\n",
    "\n",
    "def random_dynamics_matrix(key: jnp.ndarray, \n",
    "                           rho: float, \n",
    "                           dim: int) -> jnp.ndarray:\n",
    "  assert dim >= 1\n",
    "  # random orthogonal matrix\n",
    "  sk1, sk2 = jax.random.split(key)\n",
    "  W = jax.random.normal(sk1, shape=(dim, dim))\n",
    "  Q, _ = jnp.linalg.qr(W)\n",
    "  diag = jnp.array([rho] * (dim // 2) + [rho / 3] * (dim - (dim // 2)))\n",
    "  return Q @ jnp.diag(diag) @ Q.T"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "gUQ-t5L_vp0s"
   },
   "outputs": [],
   "source": [
    "def test_random_datasets():\n",
    "  \"\"\"Some sanity checks.\"\"\"\n",
    "  prng = hk.PRNGSequence(jax.random.PRNGKey(89237))\n",
    "  dim = 5\n",
    "  true_A = random_dynamics_matrix(next(prng), rho=0.99, dim=dim)\n",
    "  activation_fn = functools.partial(jax.nn.leaky_relu, negative_slope=0.5)\n",
    "  def true_dynamics_fn(state: jnp.ndarray) -> jnp.ndarray:\n",
    "    return activation_fn(true_A @ state)\n",
    "\n",
    "  xs, ys = random_coupled_dataset(\n",
    "      true_dynamics_fn,\n",
    "      next(prng),\n",
    "      dim,\n",
    "      init_scale=1.0,\n",
    "      noise_scale=0.0,\n",
    "      horizon=10)\n",
    "  assert jnp.allclose(\n",
    "      jax.vmap(true_dynamics_fn, in_axes=(0,))(xs), ys)\n",
    "  \n",
    "  xs, ys = random_decoupled_dataset(\n",
    "      true_dynamics_fn,\n",
    "      next(prng),\n",
    "      dim,\n",
    "      init_scale=1.0,\n",
    "      noise_scale=0.0,\n",
    "      horizon=10)\n",
    "  assert jnp.allclose(\n",
    "      jax.vmap(true_dynamics_fn, in_axes=(0,))(xs), ys)\n",
    "test_random_datasets()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {
    "executionInfo": {
     "elapsed": 58,
     "status": "ok",
     "timestamp": 1669165272479,
     "user": {
      "displayName": "Stephen Tu",
      "userId": "03538437493275091252"
     },
     "user_tz": 300
    },
    "id": "NOid6ul_cS_0"
   },
   "outputs": [],
   "source": [
    "dim = 25\n",
    "# seed is fixed for reproducibility\n",
    "prng = hk.PRNGSequence(jax.random.PRNGKey(7398328))\n",
    "init_scale = 1.0\n",
    "noise_scale = 0.1\n",
    "activation_fn = functools.partial(jax.nn.leaky_relu, negative_slope=0.5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "HqGB6FkIdRoD"
   },
   "outputs": [],
   "source": [
    "@jax.jit\n",
    "def loss(params: jnp.ndarray, \n",
    "         xs: jnp.ndarray,\n",
    "         ys: jnp.ndarray) -> float:\n",
    "  assert len(xs.shape) == 2\n",
    "  assert xs.shape == ys.shape\n",
    "  return 1/len(xs) * jnp.sum(jnp.square(\n",
    "      ys - jax.vmap(lambda x: activation_fn(params @ x), in_axes=(0,))(xs)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "mbigCZ6JfSM-"
   },
   "outputs": [],
   "source": [
    "@jax.jit\n",
    "def sp_loss(flat_params: jnp.ndarray, \n",
    "            xs: jnp.ndarray,\n",
    "            ys: jnp.ndarray) -> float:\n",
    "  return loss(flat_params.reshape((dim, dim)), xs, ys)\n",
    "\n",
    "_sp_grad_loss = jax.jit(jax.grad(sp_loss, argnums=0))\n",
    "def sp_grad_loss(flat_params: np.ndarray, \n",
    "                 xs: jnp.ndarray,\n",
    "                 ys: jnp.ndarray) -> np.ndarray:\n",
    "  ret = np.array(\n",
    "      jax.device_get(\n",
    "          _sp_grad_loss(flat_params.reshape((dim, dim)), xs, ys)).flatten())\n",
    "  return ret"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "tF3hb-y9m6Rp"
   },
   "outputs": [],
   "source": [
    "@functools.partial(jax.jit, static_argnums=(3, 4))\n",
    "def excess_risk(true_A: jnp.ndarray, learned_A: jnp.ndarray, key: jnp.ndarray,\n",
    "                horizon: int, num_evals: int) -> float:\n",
    "\n",
    "  def true_dynamics_fn(state):\n",
    "    return activation_fn(true_A @ state)\n",
    "\n",
    "  test_xs = jax.vmap(\n",
    "      lambda sk: random_rollout(\n",
    "          true_dynamics_fn,\n",
    "          sk,\n",
    "          dim,\n",
    "          init_scale=init_scale,\n",
    "          noise_scale=noise_scale,\n",
    "          horizon=horizon),\n",
    "      in_axes=(0,))(\n",
    "          jax.random.split(key, num=num_evals))\n",
    "\n",
    "  def score_one_traj(traj):\n",
    "    return jnp.mean(\n",
    "        jax.vmap(\n",
    "            lambda x: jnp.sum(\n",
    "                jnp.square(\n",
    "                    activation_fn(true_A @ x) - activation_fn(learned_A @ x))),\n",
    "            in_axes=(0,))(traj))\n",
    "\n",
    "  return jnp.mean(jax.vmap(score_one_traj, in_axes=(0,))(test_xs))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "QHHbEzuYpBKW"
   },
   "outputs": [],
   "source": [
    "def make_excess_risk_curve(key: jnp.ndarray,\n",
    "                           true_A: jnp.ndarray,\n",
    "                           train_xs: jnp.ndarray,\n",
    "                           train_ys: jnp.ndarray,\n",
    "                           eval_horizons: Sequence[int]) -> jnp.ndarray:\n",
    "  assert train_xs.shape == train_ys.shape\n",
    "  prng = hk.PRNGSequence(key)\n",
    "  excess_risks = []\n",
    "  for eval_horizon in tqdm(eval_horizons):\n",
    "    assert eval_horizon <= len(train_xs)\n",
    "    train_xs_prefix = train_xs[:eval_horizon]\n",
    "    train_ys_prefix = train_ys[:eval_horizon]\n",
    "    res = sp.optimize.minimize(\n",
    "        functools.partial(sp_loss, xs=train_xs_prefix, ys=train_ys_prefix),\n",
    "        np.zeros((dim * dim,)),\n",
    "        method='L-BFGS-B',\n",
    "        jac=functools.partial(\n",
    "            sp_grad_loss, xs=train_xs_prefix, ys=train_ys_prefix))\n",
    "    if not res.success:\n",
    "      print(\"ERROR:\")\n",
    "      print(res)\n",
    "    learned_A = res.x.reshape((dim, dim))\n",
    "    excess_risks.append(\n",
    "        excess_risk(true_A, learned_A, next(prng), \n",
    "                    eval_horizon, num_evals=1000))\n",
    "  return jnp.array(excess_risks)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "executionInfo": {
     "elapsed": 456631,
     "status": "ok",
     "timestamp": 1669165735034,
     "user": {
      "displayName": "Stephen Tu",
      "userId": "03538437493275091252"
     },
     "user_tz": 300
    },
    "id": "LrnGqLpxLjcN",
    "outputId": "ca65343f-9fc7-4bb4-eaad-a1fed10b8d03"
   },
   "outputs": [],
   "source": [
    "rhos = [0.9, 0.99]\n",
    "rho_to_true_As = {}\n",
    "rho_to_datasets = {}\n",
    "# number of repeated datasets for error bars\n",
    "num_train_datasets = 10\n",
    "\n",
    "def generate_data(fn, dynamics_fn, key, dim, \n",
    "                  init_scale, noise_scale, horizon, num_train_datasets):\n",
    "  all_xs, all_ys = [], []\n",
    "  prng_seq = hk.PRNGSequence(key)\n",
    "  # note: this is not vmap-ed since we get OOM errors when the horizon is\n",
    "  # too long. making it an explicit for loop seems to avoid the OOM issues. \n",
    "  for _ in tqdm(range(num_train_datasets)):\n",
    "    xs, ys = fn(dynamics_fn, next(prng_seq), dim, \n",
    "                init_scale, noise_scale, horizon)\n",
    "    all_xs.append(xs)\n",
    "    all_ys.append(ys)\n",
    "  return jnp.array(all_xs), jnp.array(all_ys)\n",
    "\n",
    "for rho in rhos:\n",
    "  print(f\"generating data for rho={rho}\")\n",
    "  true_A = random_dynamics_matrix(next(prng), rho, dim)\n",
    "  all_coupled_train_xs, all_coupled_train_ys = generate_data(\n",
    "      random_coupled_dataset,\n",
    "      lambda x: activation_fn(true_A @ x),\n",
    "      next(prng),\n",
    "      dim,\n",
    "      init_scale,\n",
    "      noise_scale,\n",
    "      5000,\n",
    "      num_train_datasets)\n",
    "  all_ind_train_xs, all_ind_train_ys = generate_data(\n",
    "      random_decoupled_dataset,\n",
    "      lambda x: activation_fn(true_A @ x),\n",
    "      next(prng),\n",
    "      dim,\n",
    "      init_scale,\n",
    "      noise_scale,\n",
    "      5000,\n",
    "      num_train_datasets)\n",
    "  rho_to_true_As[rho] = true_A\n",
    "  rho_to_datasets[rho] = {\n",
    "      'coupled': (all_coupled_train_xs, all_coupled_train_ys),\n",
    "      'ind': (all_ind_train_xs, all_ind_train_ys),\n",
    "  }"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "metadata": {
    "executionInfo": {
     "elapsed": 63,
     "status": "ok",
     "timestamp": 1669166382899,
     "user": {
      "displayName": "Stephen Tu",
      "userId": "03538437493275091252"
     },
     "user_tz": 300
    },
    "id": "InmepUaS_YUU"
   },
   "outputs": [],
   "source": [
    "short_horizons = [100, 200, 300, 400, 500, 600, 700, 800, 900, 1000]\n",
    "extra_horizons = [2000, 3000, 4000, 5000]\n",
    "long_horizons = [short_horizons[-1]] + extra_horizons\n",
    "eval_horizons = short_horizons + extra_horizons"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "executionInfo": {
     "elapsed": 94634,
     "status": "ok",
     "timestamp": 1669167513345,
     "user": {
      "displayName": "Stephen Tu",
      "userId": "03538437493275091252"
     },
     "user_tz": 300
    },
    "id": "USGu3yxepBaT",
    "outputId": "ad66ca0e-de3b-48bd-f3fa-2c704043b155"
   },
   "outputs": [],
   "source": [
    "rho_to_risk_curves = {}\n",
    "\n",
    "for rho in rhos:\n",
    "  print(f\"generating risk curves for rho={rho}\")\n",
    "  mixing_risk_curves = [] \n",
    "  for coupled_train_xs, coupled_train_ys in zip(\n",
    "      *rho_to_datasets[rho]['coupled']):\n",
    "    mixing_risk_curves.append(\n",
    "        make_excess_risk_curve(next(prng), \n",
    "                               rho_to_true_As[rho],\n",
    "                               coupled_train_xs, \n",
    "                               coupled_train_ys, \n",
    "                               eval_horizons))\n",
    "  mixing_risk_curves = np.array(mixing_risk_curves)\n",
    "  ind_risk_curves = [] \n",
    "  for ind_train_xs, ind_train_ys in zip(\n",
    "      *rho_to_datasets[rho]['ind']):\n",
    "    ind_risk_curves.append(\n",
    "        make_excess_risk_curve(next(prng), \n",
    "                               rho_to_true_As[rho],\n",
    "                               ind_train_xs, \n",
    "                               ind_train_ys, \n",
    "                               eval_horizons))\n",
    "  ind_risk_curves = np.array(ind_risk_curves)\n",
    "  rho_to_risk_curves[rho] = {\n",
    "      'coupled': mixing_risk_curves,\n",
    "      'ind': ind_risk_curves,\n",
    "  }"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 69,
   "metadata": {
    "executionInfo": {
     "elapsed": 59,
     "status": "ok",
     "timestamp": 1669167521700,
     "user": {
      "displayName": "Stephen Tu",
      "userId": "03538437493275091252"
     },
     "user_tz": 300
    },
    "id": "-_wL8O4p7tUU"
   },
   "outputs": [],
   "source": [
    "labelsize = 14\n",
    "legendsize = 12"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 73,
   "metadata": {
    "colab": {
     "height": 372
    },
    "executionInfo": {
     "elapsed": 1976,
     "status": "ok",
     "timestamp": 1669167539440,
     "user": {
      "displayName": "Stephen Tu",
      "userId": "03538437493275091252"
     },
     "user_tz": 300
    },
    "id": "Z8jf7Q-76iir",
    "outputId": "c032bf93-bbc5-488c-9a83-c8ae4668d737"
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\nQmCC\n",
      "text/plain": [
       "<Figure size 1000x500 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(10, 5))\n",
    "plt.rc('xtick', labelsize=legendsize)\n",
    "plt.rc('ytick', labelsize=legendsize)\n",
    "\n",
    "colors = sns.color_palette(n_colors=2)\n",
    "\n",
    "for idx, rho in enumerate(rhos):\n",
    "  mixing_risk_curves = rho_to_risk_curves[rho]['coupled']\n",
    "  ind_risk_curves = rho_to_risk_curves[rho]['ind']\n",
    "  mixing_risk_curves = mixing_risk_curves[:, :len(short_horizons)]\n",
    "  ind_risk_curves = ind_risk_curves[:, :len(short_horizons)]\n",
    "\n",
    "  mixing_risk_means = np.mean(mixing_risk_curves, axis=0)\n",
    "  mixing_risk_stds = np.std(mixing_risk_curves, axis=0)\n",
    "  ind_risk_means = np.mean(ind_risk_curves, axis=0)\n",
    "  ind_risk_stds = np.std(ind_risk_curves, axis=0)\n",
    "\n",
    "  plt.subplot(1, len(rhos), idx + 1)\n",
    "\n",
    "  plt.semilogy(short_horizons, mixing_risk_means, '-o', color=colors[0])\n",
    "  plt.fill_between(\n",
    "      short_horizons,\n",
    "      mixing_risk_means - mixing_risk_stds,\n",
    "      mixing_risk_means + mixing_risk_stds,\n",
    "      color=colors[0],\n",
    "      alpha=0.4)\n",
    "\n",
    "  plt.semilogy(short_horizons, ind_risk_means, '--x', color=colors[1])\n",
    "  plt.fill_between(\n",
    "      short_horizons,\n",
    "      ind_risk_means - ind_risk_stds,\n",
    "      ind_risk_means + ind_risk_stds,\n",
    "      color=colors[1],\n",
    "      alpha=0.4)\n",
    "\n",
    "  plt.ylim(5e-3, 5e-1)\n",
    "\n",
    "  plt.xlabel(r'$T$', fontsize=labelsize)\n",
    "  if idx == 0:\n",
    "    plt.ylabel(r'$L^2$ Excess Risk', fontsize=labelsize)\n",
    "    plt.legend(('Trajectory', 'Ind Baseline'), fontsize=legendsize)\n",
    "  plt.title(r'$\\rho={}$'.format(rho), fontsize=labelsize)\n",
    "\n",
    "plt.tight_layout()\n",
    "plt.savefig('glm_little_mixing_risks.pdf')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 76,
   "metadata": {
    "colab": {
     "height": 300
    },
    "executionInfo": {
     "elapsed": 953,
     "status": "ok",
     "timestamp": 1669167566406,
     "user": {
      "displayName": "Stephen Tu",
      "userId": "03538437493275091252"
     },
     "user_tz": 300
    },
    "id": "8UTPeCo00EcN",
    "outputId": "6377c55c-0d07-4084-9e41-244339e8f94b"
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 800x400 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(8, 4))\n",
    "plt.rc('xtick', labelsize=legendsize)\n",
    "plt.rc('ytick', labelsize=legendsize)\n",
    "\n",
    "colors = sns.color_palette(n_colors=len(rhos) + 1)\n",
    "\n",
    "plt.subplot(1, 2, 1)\n",
    "\n",
    "for rho, color in zip(rhos, colors):\n",
    "\n",
    "  mixing_risk_curves = rho_to_risk_curves[rho]['coupled']\n",
    "  ind_risk_curves = rho_to_risk_curves[rho]['ind']\n",
    "  mixing_risk_curves = mixing_risk_curves[:, :len(short_horizons)]\n",
    "  ind_risk_curves = ind_risk_curves[:, :len(short_horizons)]\n",
    "\n",
    "  mixing_risk_means = np.mean(mixing_risk_curves, axis=0)\n",
    "  mixing_risk_stds = np.std(mixing_risk_curves, axis=0)\n",
    "  ind_risk_means = np.mean(ind_risk_curves, axis=0)\n",
    "  ind_risk_stds = np.std(ind_risk_curves, axis=0)\n",
    "\n",
    "  plt.plot(\n",
    "      short_horizons, mixing_risk_means / ind_risk_means, '-o', color=color)\n",
    "  plt.fill_between(\n",
    "      short_horizons,\n",
    "      (mixing_risk_means - mixing_risk_stds) / (ind_risk_means + ind_risk_stds),\n",
    "      (mixing_risk_means + mixing_risk_stds) / (ind_risk_means - ind_risk_stds),\n",
    "      alpha=0.4)\n",
    "\n",
    "plt.plot(short_horizons, np.ones_like(short_horizons), '--', color=colors[-1])\n",
    "\n",
    "plt.xlabel(r'$T$', fontsize=labelsize)\n",
    "plt.ylabel(r'$L^2$ Excess Risk Ratio', fontsize=labelsize)\n",
    "plt.legend(\n",
    "    [r'$\\rho={}$'.format(rho) for rho in rhos] + ['Ideal'], fontsize=legendsize)\n",
    "plt.ylim((0.75, 4.4))\n",
    "\n",
    "plt.subplot(1, 2, 2)\n",
    "\n",
    "for rho, color in zip(rhos, colors):\n",
    "\n",
    "  mixing_risk_curves = rho_to_risk_curves[rho]['coupled']\n",
    "  ind_risk_curves = rho_to_risk_curves[rho]['ind']\n",
    "  mixing_risk_curves = mixing_risk_curves[:, len(short_horizons) - 1:]\n",
    "  ind_risk_curves = ind_risk_curves[:, len(short_horizons) - 1:]\n",
    "\n",
    "  mixing_risk_means = np.mean(mixing_risk_curves, axis=0)\n",
    "  mixing_risk_stds = np.std(mixing_risk_curves, axis=0)\n",
    "  ind_risk_means = np.mean(ind_risk_curves, axis=0)\n",
    "  ind_risk_stds = np.std(ind_risk_curves, axis=0)\n",
    "\n",
    "  plt.plot(long_horizons, mixing_risk_means / ind_risk_means, '-o', color=color)\n",
    "  plt.fill_between(\n",
    "      long_horizons,\n",
    "      (mixing_risk_means - mixing_risk_stds) / (ind_risk_means + ind_risk_stds),\n",
    "      (mixing_risk_means + mixing_risk_stds) / (ind_risk_means - ind_risk_stds),\n",
    "      alpha=0.4)\n",
    "\n",
    "plt.plot(long_horizons, np.ones_like(long_horizons), '--', color=colors[-1])\n",
    "plt.xlabel(r'$T$', fontsize=labelsize)\n",
    "plt.ylim((0.75, 4.4))\n",
    "\n",
    "plt.tight_layout()\n",
    "plt.savefig('glm_little_mixing_ratio_long.pdf')"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
